package org.dromara.system.domain.vo;

import java.math.BigDecimal;
import org.dromara.system.domain.PayApp;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 应用列视图对象 pay_app
 *
 * @author Gavino
 * @date 2024-10-22
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = PayApp.class)
public class PayAppVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 应用ID
     */
    @ExcelProperty(value = "应用ID")
    private Long appId;

    /**
     * 密钥
     */
    @ExcelProperty(value = "密钥")
    private String appSecret;

    /**
     * 网关地址
     */
    @ExcelProperty(value = "网关地址")
    private String gateway;

    /**
     * 轮询组ID
     */
    @ExcelProperty(value = "轮询组ID")
    private Long groupId;

    /**
     * 商品类型
     */
    @ExcelProperty(value = "商品类型")
    private Integer goodsType;

    /**
     * 吃单比例
     */
    @ExcelProperty(value = "吃单比例")
    private BigDecimal ratio;

    /**
     * 吃单计算时间
     */
    @ExcelProperty(value = "吃单计算时间")
    private Date ratioTime;

    /**
     * 吃单最小值
     */
    private BigDecimal ratioMin;

    /**
     * 吃单最大值
     */
    private BigDecimal ratioMax;

    /**
     * 是否传邮箱
     */
    @ExcelProperty(value = "是否传邮箱")
    private Integer needMail;

    /**
     * 风控策略ID
     */
    private Long policyId;

    /**
     * 24小时失败次数
     */
    @ExcelProperty(value = "24小时失败次数")
    private Integer failCount;

    /**
     * 24小时成功次数
     */
    @ExcelProperty(value = "24小时成功次数")
    private Integer successCount;

    /**
     * 成功总金额
     */
    private BigDecimal successTotal;

    /**
     * 总额度
     */
    private BigDecimal totalLimit;

    /**
     * 价格插件
     */
    private String pricePlugin;

    /**
     * 强制修改价格
     */
    private Integer priceForce;

    /**
     * 额度刷新时间
     */
    private String refreshTime;

    /**
     * 刷新是否自动上线
     */
    private Integer refreshAutoUp;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态")
    private Integer status;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     * 商户ID
     */
    private Long clientId;

    /**
     * 商户名称
     */
    @ExcelProperty(value = "商户名称")
    private String clientName;

    /**
     * 代理人名称
     */
    @ExcelProperty(value = "代理人名称")
    private String agentName;

    /**
     * 更新时间
     */
    @ExcelProperty(value = "更新时间")
    private Date updateTime;

    /**
     * 创建时间
     */
    @ExcelProperty(value = "创建时间")
    private Date createTime;

    /**
     * 轮询组名称
     */
    private String groupName;

}
